home *** CD-ROM | disk | FTP | other *** search
/ Acorn Risc Technologies StrongARM CD-ROM / Acorn Risc Technologies StrongARM CD-ROM.iso / ftp / documents / appnotes / 031_045 / 037c / Text
Encoding:
Text File  |  1993-08-02  |  18.7 KB  |  415 lines

  1. 3rd August 1992
  2. -----------------------------------------------------------------------------
  3. Support Group Application Note 
  4. Number: 037
  5. Issue: 1 
  6. Author: D J Bell
  7. -----------------------------------------------------------------------------
  8.  
  9. Functional Differences Between Master 128 and BBC Models B and B+
  10.  
  11. -----------------------------------------------------------------------------
  12. Applicable Hardware: BBC Master 128
  13.  
  14. Related Application Notes:
  15.  
  16.  
  17. -----------------------------------------------------------------------------
  18. Copyright (C) Acorn Computers Limited 1992
  19.  
  20. Every effort has been made to ensure that the information in this leaflet is 
  21. true and correct at the time of printing. However, the products described in
  22. this leaflet are subject to continuous development and improvements and
  23. Acorn Computers Limited reserves the right to change its specifications at
  24. any time. Acorn Computers Limited cannot accept liability for any loss or
  25. damage arising from the use of any information or particulars in this
  26. leaflet. ACORN, ECONET and ARCHIMEDES are trademarks of Acorn Computers
  27. Limited.
  28. -----------------------------------------------------------------------------
  29. Support Group
  30. Acorn Computers Limited
  31. Acorn House
  32. Vision Park
  33. Histon
  34. Cambridge       CB4 4AE
  35. -----------------------------------------------------------------------------
  36.  
  37.  
  38. Operating system version:
  39.         New Series 3 OS for the Master 128/512/Sc/Turbo
  40.         New Series 4 OS for the Master Econet Terminal.
  41.  
  42. Operating system changes:
  43.  
  44. As version 1.2 with following extensions:
  45.  
  46. * Shadow Screen - Use of MODE 128 to 135 instead of MODE 0 to 7 results in
  47. the use of a section of memory for the screen separate from the main area of
  48. RAM.  This allows more room for user Progs. *  Real-time clock - the status
  49. of a Real-time clock can be called from the MOS.  The OSWORD calls &E and &F
  50. Read & Write the clock in BCD or text formats. *  Default command line
  51. interpreter if no language present or *GO used. * Configure CMOS RAM
  52. commands - the state of the CMOS RAM can be set for both reserved and
  53. unreserved Bits.  Reserved Bits include:
  54.  
  55.         * Start-up mode                         MODE <0-7, 128-135>
  56.         * Fileserver station number             FS <0-255 [.0-255]>
  57.         * Printer-Server station number         PS <0-255 [.0-255]>
  58.         * Econet station ID                     Transient Command
  59.           (must be set by Net Manager)
  60.         * Start-up language ROM number          LANG <ROM>
  61.         * Start-up filing system ROM number     FILE <ROM>
  62.         * *TV position & Interlace state        TV [<Dec>[, <Dec>}
  63.         * Auto-repeat delay                     DELAY <0-255>
  64.         * Auto-repeat rate                      REPEAT <0-255>
  65.         * Default printer (*FX5 type)           PRINT <0-255>
  66.         * Print ignore char. (no param=no ignore)       IGNORE <0-255>
  67.         * Tube selected (Internal/External)     EXTUBE/INTUBE
  68.           (Looks for int Tube if no ext fitted)
  69.         * Tube ON/OFF                           TUBE/NOTUBE
  70.           (TUBE defaults to I/O Proc if no Co-proc fitted)
  71.         * Serial baud rate (Both ways)          BAUD <1-8>
  72.         * Serial data format                    DATA <0-7>
  73.         * Boot status                           BOOT/NOBOOT
  74.           (Reverses BRK and SHIFT+BRK action)
  75.         * Scroll state (on/off)                 SCROLL/NOSCROLL
  76.         * Floppy Drive params (speed etc)       FDRIVE <0-3>
  77.           (Use low number for highest step rate.  0 has MFM pre-compensation. 
  78.            1 is same speed by no compensation)
  79.         * Floppy or Winchester start-up         FLOPPY/HARD
  80.           (floppy is selected if no Winchester is fitted with HARD)
  81.         * ADFS or FADFS as default              DIR/NODIR
  82.           (FADFS doesn’t Mount disc automatically)
  83.         * Bell character volume                 LOUD/QUIET
  84.         * Caps lock on/off                      CAPS/NOCAPS/SHCAPS
  85.         PS & FS status bits only operational when ANFS fitted.
  86.  
  87. Configuration is set using *CONFIGURE <param> or read using *STATUS <param>
  88. or just *STATUS to read all.
  89.  
  90.  
  91. *  Soft characters fully exploded.
  92. *  Improved soft-key structure with more buffer area.
  93.  
  94. *  New resident Operating System commands:
  95.         *APPEND - functions as BUILD but appends to end of file.
  96.         *BUILD - as DFS but control codes input by | mechanism.
  97.         *CLOSE - closes open files on current filing system.
  98.         *CONFIGURE - To set-up start-up option(s).
  99.         *CREATE - creates empty file using *SAVE params.
  100.         *DELETE - as DFS delete.
  101.         *DUMP - <start in file> <start address on output>.
  102.         *EX - Examine file in specified directory.
  103.         *EXEC - Take input from file rather than keyboard.
  104.         *GO - to enter address in language/IO processor.
  105.         *GOIO - to enter program at address in IO processor.
  106.         *IGNORE - as *FX6.
  107.         *INFO - as *EX, but for single files or Wildcard use.
  108.         *INSERT - inserts ROM number n into ROM map from reset.
  109.         *LIST - List file in GSREAD format (*TYPE with line nos.)
  110.         *LIBFS - Define FS where LIB is from current FS.
  111.         *MOVE - copies files from one name to another incl between filing
  112. systems.
  113.         *PRINT - as TYPE but gets/processes vdu codes.
  114.         *REMOVE - as DELETE but no error message if not found.
  115.         *ROMS - list ROM names, sockets, version & UNPLUG/PLUG.
  116.         *SHADOW - with 0 or no param, gives shadow on next mode.  With 1,
  117. drops shadow on next mode.
  118.         *SHOW - Displays soft-key contents.
  119.         *SHUT - Close open files on all filing systems.
  120.         *SRDATA - Reserve Sideways RAM for data use.
  121.         *SRREAD - Copy Sideways RAM to main RAM.
  122.         *SRROM - Reserve Sideways RAM for direct addressing.
  123.         *SRWRITE - Copy main RAM to Sideways RAM.
  124.         *SPOOL - Direct screen output to named file.
  125.         *SPOOLON - functions as SPOOL but appends to end of file.
  126.         *STATUS - Lists status of start-up option(s).
  127.         *TIME - Displays time from Real-time clock.
  128.         *TYPE - List file with control codes displayed as | D etc.
  129.         *UNPLUG - Removes ROM number n from ROM map from reset.
  130. *  Numeric keypad - options to set base for range of values returned and set
  131. whether SHIFT/CTRL etc affect codes. 
  132.  
  133. *  Cassette filing system upgraded to do OSGBPB (calls 1 & 3) in those cases
  134. where it is to write to or read from the current pointer.   OSFSC extended
  135. for CFS to provide call 7 so that it returns legal file handle range. CFS
  136. will perform *EX (but not *INFO). CFS can be reselected by *FX143,18,<n>
  137. where n=1 (1200 baud), n=2 (300 baud), n=3 (ROM filing system). 
  138.  
  139. *  Multifiling system capability.  Name of filing system can be pre-fixed to
  140. the file name itself.  Files may be opened and kept open across several
  141. filing systems.  Filing names currently defined include:
  142.         CFS (or TAPE), ROM, DFS, ADFS, NET
  143.  
  144.  
  145. *  Extended graphics facilities:
  146.         * Extended Fill commands using checkerboard pattern/stipple.
  147.         * Mark-to-space ratio of dotted line.
  148.         * New triangle algorithm for correct plotting under all conditions.
  149.         * Parallelogram - Solid fill.
  150.         * Rectangle - Solid fill.
  151.         * Circle - Outline.
  152.         * Circle - Solid fill.
  153.         * Arc - Line fill.
  154.         * Arc - Solid fill (Pie shape).
  155.         * Arc - Solid fill (chord segment).
  156.         * Ellipse - Outline.
  157.         * Ellipse - Solid fill.
  158.         * Fill enclosing shape outline (flood fill).
  159.         * Enhanced speed of all fill operations.
  160.         * Move/copy rectangle.
  161.         * Extended horizontal line fill.
  162. *  Extension text:
  163.         * Improved character draw speed (especially VDU5).
  164.         * Clear block of text window.
  165.         * Output character with no cursor move (dead key).
  166.         * Advance left/right after drawing character.
  167.         * Pending scroll to allow bottom right character to be drawn.
  168.         * Cursor options held across mode changes.
  169.         * Direct window scroll - left/right/up/down.
  170. *  Extra 128 standard characters in ASCII range 128 to 255.
  171.  
  172.  
  173. Detailed Changes
  174.  
  175. MISCELLANEOUS:
  176. 1)  Sideways ROM headers which have been "illegal" previously on Models B
  177. and B+, but accepted by the MOS, may not be accepted by this MOS version.
  178.  
  179. 2)  The screen Paged Mode algorithm has been improved in this MOS, resulting
  180. in slight differences in the number of displayed lines in some modes
  181. compared with Model B and B+.
  182.  
  183. 3)  In the Econet Terminal, the User VIA chip (6522) is not normally fitted. 
  184. Application software intended for Econet use should not use the VIA timer.
  185.  
  186. 4)  The RAM latch at &FE34 has some changes and additions to the use of each
  187. bit.  Refer to the Advanced Reference Guide for more information.
  188.  
  189. 5)  The machine start-up mode and language are now easily reconfigured. 
  190. Software should always have an auto-boot file which sets the language and
  191. screen mode, without assuming a default state.  (The machine may NOT be in
  192. Mode 7 or in BASIC at disc Boot-up).
  193.  
  194. 6)  Software should not use "*abbreviation" due to the risk of clashes with
  195. other fitted ROMs with similar *commands.  In particular, *D. no longer
  196. selects the DFS!  (It selects *DUMP).
  197.  
  198.  
  199. 7)  Software should NEVER assume the position of PAGE.  If it needs to know
  200. it should ask the operating system where OSHWM is.
  201.  
  202. 8)  To provide conversion compatibility across DFS and ADFS, note the
  203. following:
  204.         *DRIVE - ADFS does not support this.  Use *DIR :X.Y, which is a
  205.                 format common to both filing systems.
  206.         *DIR   - ADFS does not  support moves directly from one directory to
  207.                 another, arbitrarily across the structure.  Use the  full
  208.                 pathname where relevant in DFS to support  ADFS. 9) 
  209.                 Programs should never define soft characters by directly
  210.                 loading into the soft-key definition area (&C00-&CFF).
  211.  
  212. 10) The Econet Terminal is NOT upgradeable to other Master variants.
  213.  
  214. MEMORY MAP CHANGES:
  215. The Shadow screen in the Model B+ from &3000 - &7FFF (Sideways) is present
  216. in the Master 128 machine.  The 12K of additional Paged RAM in Model B+ is
  217. implemented differently in the Master 128 machine and is reserved for
  218. Operating and Filing system use as "Private RAM" (see below).
  219.  
  220. The minimum machine configuration is 128K, where 64K is allocated to
  221. Sideways RAM (4 by 16K pages) in a similar way to the 128K Model B+.  Use of
  222. internally fitted ROM's in two of the three sockets will require changes to
  223. the link settings which will remove access to some of the Sideways RAM. 
  224. (They are ROM locations 4, 5, 6 & 7).
  225.  
  226. Memory map below OSHWM, with changes from Model B/B+ indicated:
  227. Page zero - &00-&FF
  228.         &00-&8F   Language workspace.  BASIC allows &70-&8F for the user.
  229.         &90-&9F   ECONET workspace.  Do not use.
  230.         &A0-&A7 NMI workspace.  It must be claimed before use, the owner must:
  231.         
  232.         a) Have a Filing System number allocated to it.  Note the error in
  233.         the Advanced User Guide on page 323.  The NMI ID passed around by
  234.         Service Calls &B and &C are Filing System numbers not ROM numbers.
  235.         b) Be able to process ROM Service Calls &B and &C ie they must be
  236.         ROMs or intercept OSBYTE &8F.
  237.  
  238.         &A8-&AF   MOS scratch space. Also user scratch between MOS calls.
  239.         &B0-&BF   Filing System scratch space.  Watch out for "hidden"
  240.                         filing system calls ie those produced by OSWRCH if
  241.                         *SPOOL used.
  242.         &C0-&CF   Current Filing system PRIVATE workspace.
  243.         &D0-&FF   MOS workspace only (see Advanced Reference Guide for
  244.                         accurate description of the VDU Driver use).
  245.  
  246. Page one - &100-&1FF
  247.         Machine stack and error message buffer.
  248.  
  249. Page two -  &200-&2FF
  250.         &200-&235   Vectors
  251.         &236-&28F   Main MOS variables.
  252.         &290-&2FF   MOS workspace (for MOS only).
  253.  
  254. Page three - &300-&3FF
  255.         &300-&37F   VDU variables (for use by graphics routines only).  
  256. In the Model B, B+ and this machine, Page three is used for VDU workspace. 
  257. Most variables are the same, with the following exceptions:
  258.  
  259.         Model B and B+                  This Machine
  260. &359 - Foreground graphics colour       Plotting foreground/background
  261. &35A - Background graphics colour       Current graphics plot mode
  262. &366 - Mode 7 Cursor                    Cursor control flags (VDU 23,16)
  263. &367 - Exploded font flag               Dotted line pattern (VDU 23,6)
  264. &368 - Exploded font location bytes     Current dotted line state
  265. &369 -       "         "                Plot colour (0-solid, Not 0-pattern)
  266. &36A -       "         "                F/ground colour (0-solid, Not 0-pattern)
  267. &36B -       "         "                B/ground colour (0-solid, Not 0-pattern)
  268. &36C -       "         "                Colour 81 flag (top bit set pending)
  269. &36D -       "         "                Foreground graphics colour
  270. &36E -       "         "                Background graphics colour
  271.  
  272.         &380-&3DF   Cassette Filing system workspace (do not use).
  273.         &3E0-&3FF   Keyboard input buffer (do not use unless replacing).
  274.  
  275. Page four, five, six and seven - &400-&7FF
  276.         Language workspace.  Do not use unless you are the current language
  277.         or the current language has allowed you to use it.
  278.  
  279. Page eight - &800-&8FF
  280.         &800-&87F   Sound workspace.  DO NOT USE (unless you want strange
  281.                         noises!).
  282.         &880-&8BF   Printer buffer.  Useable if, and only if, no printing
  283.                         needed.
  284.         &8C0-&8FF   Sound workspace (envelopes 1-4).  Useable if, and only
  285.                         if, envelopes not needed.
  286.  
  287. Page nine - &900-&9FF
  288.         &900-&9BF   RS423 O/P buffer, or Cassette O/P buffer (1st part), or
  289.                         Sound workspace (envelopes 5-16).  Do not use for
  290.                         anything else, as this area could be re-allocated.
  291.         &9C0-&9FF   Speech buffer, or Cassette O/P buffer (2nd part).  Do
  292.                         not use for anything else, as this area could be
  293.                         re-allocated.
  294.  
  295. Page ten - &A00-&AFF
  296.         RS423 I/P buffer, or Cassette I/P buffer.  Do not use for anything
  297.         else, as this area could be re-allocated.
  298.  
  299. Page eleven - &B00-&BFF
  300.         ECONET workspace.  Do not use.
  301. In the Model B and B+ this is used for the soft key buffer.  In this machine
  302. the soft key buffer resides in the Private 12K RAM and should not be
  303. accessed by the user.  Programs directly accessing Page eleven on the Model
  304. B & B+ for soft-key purposes will be incompatible with this machine.
  305.                 Note:  Initial Page states are:
  306.                 Model B, B+:    &B00-&BFF - &10
  307.                 This machine:   &B00-&BFF - &00
  308.  
  309. Page twelve - &C00-&CFF
  310.         ECONET workspace.  Do not use.
  311. In the Model B & B+ this is used for user defined characters in the range
  312. ASCII 224-255.  In this machine, all characters up to ASCII 255 are defined
  313. with a standard font.  this definition resides in the Private RAM area and
  314. should not be accessed by the user (the user can, however, re-define all of
  315. them as before with VDU23).  Programs directly accessing Page twelve on the
  316. Model B & B+ for user defined characters will be incompatible with this
  317. machine.
  318.         Note:  initial Page states are:
  319.         Model B, B+:    &C00-&0D        &C01-&CFF - &00
  320.         This machine:   &C00-&CFF - &00
  321.  
  322. Page thirteen - &D00-&DFF
  323.         &D00-&D5F   NMI routine and workspace.  NMI's must be claimed to use
  324.                         this area.
  325.         &D60-&D7F   ECONET private workspace.  Do not use.
  326.         &D80-&D91   Currently unallocated.
  327.         &D92-&D9E   Reserved for Trackerball use.
  328.         &D9F-&DEF   Expanded vector set.
  329.         &DF0-&DFF   Paged ROM workspace, 1 byte per ROM.
  330.  
  331. 12K Private RAM:
  332.         &8000-&83FF   Soft-key buffer.  Do not use directly.
  333.         &8400-&87FF   VDU workspace.  Reserved for routines that need a
  334.                         large area such as Flood-fill.  Do not use directly.
  335.         &8800-&88FF   VDU variables and workspace.  Do not use directly.
  336.         &8900-&8FFF   Character definitions.  Do not use directly.
  337.         &C000-&DBFF   Paged ROM workspace, claimed via a Service Call.
  338.         &DC00-&DCFF   MOS CLI buffer.  Corrupted by ' * ' commands.
  339.         &DD00-&DEFF   Transient utility workspace eg *MOVE.
  340.         &DF00-&DFFF   MOS private workspace.
  341.  
  342.  
  343. PCB LINK SETTINGS:
  344. Important!
  345. These links will  not normally need adjustment.  if they should require
  346. changing, the Mains Supply MUST be disconnected before removing the top of
  347. the computer case using the 4 screws on the underside marked FIX.  Take note
  348. of any warning labels within the case.
  349.  
  350. Link 1 -        Audio to 1Mhz bus. Normally set for input.  Can be changed
  351.         to audio output by cutting track link a and linking B. 
  352.  
  353. Link 2 -        Cartridge -5V decoupler.  Fit R9 and break track link to
  354.         enable capacitive decoupling within cartridge. 
  355.  
  356. Link 3 -        Not present. 
  357.  
  358. Link 4 -        Allocated for advanced software use.  Enables real-time
  359.         clock Alarm facility to be used.  Not normally fitted. 
  360.  
  361. Link 5 -        Sync polarity.  Cut track link and join other side to invert
  362.         from negative to positive sync. 
  363.  
  364. Link 60/61 -    Normally AB only linked.  Link CD in addition for 8Mhz
  365.         output to Cartridges.
  366.         WARNING!  The lack of a clock supply to the computer can cause
  367.         damage to the computer's dynamic RAM.  Link AB should not be removed
  368.         as it would result in the loss of a clock supply. 
  369.  
  370. Link 7 -        Video polarity.  Cut track link and join other side to
  371.         invert the video output. 
  372.  
  373. Link 8 -       
  374. Not present. 
  375.  
  376. Link 9 -        Not present. 
  377.  
  378. Link 10 -       Channel select.  Selects one of two VHF channels when VHF
  379.         modulator fitted. 
  380.  
  381. Link 11 -       Not present.
  382.  
  383. Link 12 -       Composite Sync output to Cartridge.  Normally set to B. 
  384.         This provides a logic LOW at cartridge pin A10.  In position A, a
  385.         connection is provided to the computer CSYNC for Genlock.
  386.  
  387. Link 13 -       Change link when fitting a different Reference Diode on the
  388.         A/D input.  This diode should be fitted at position PR1.
  389.  
  390. Link 14 -       Used when Chroma MSI chip not fitted.
  391.  
  392. Link 15 -       Select PAL or NTSC TV system encoding.
  393.  
  394. Link 16 -       Not normally fitted.
  395.  
  396. Link 17 -       Not present.
  397.  
  398. Link 18 -       Set East for ROM socket IC 41 active.  Normally set West for
  399.         sideways RAM active.
  400.  
  401. Link 19 -       Set East for ROM socket IC 37 active.  Normally set West for
  402.         sideways RAM active.
  403.  
  404. Link 20 -       Not present.
  405.  
  406. Link 21 -       Not normally fitted.  Links Light-pen strobe into the
  407.         intercartridge link pin 10.  Can be used for Genlock sync via LPSTB.
  408.  
  409. CARTRIDGE SOCKETS;
  410. The cartridge socket specification is a superset of the Electron Plus-1
  411. specification.  All Electron Cartridges should work in this machine, but may
  412. run faster.  the converse may not be true unless a specification sub-set is
  413. used.  Ask for the new Cartridge Specification or consult the appropriate
  414. Reference Guide.
  415.